home *** CD-ROM | disk | FTP | other *** search
-
- *INTERRUPT PROCEDURE DEFINITION MACRO
- * SETS UP VECTOR AT 0 AND 2, DISABLE
- * INTERRUPTS, SAVES AC, AR1, AR0, STATUS, PC
- *
- *A IS INTR NAME (<4 CHAR), B IF MAIN NAME (<4 CHAR)
-
- COPY CHECK.SCR
- COPY SACX.SCR
-
- INTR $MACRO A,B
- $CHECK :A:
- PSEG PROG SEG
- B :B: BRANCH TO MAIN
- DEF :A:
- :A: EQU $ INTRPT ENTRY
- DINT DISBLE
- SST :A:$S SAVE STATUS
- LDPK 1 TO 2ND PAGE
- SACX :A:$C SAVE AC (DOUBLE)
- POP POP RETURN
- SACL :A:$R,0 SAVE AS RETURN
- SAR AR0,:A:$0 SAVE AR0
- SAR AR1,:A:$1 SAVE AR1
- LDPK 0 BACK TO PAGE 1
- $VAR Q
- $ASG '''' TO Q.S
- CSEG :Q::A:$C:Q: INTRPT COMMON
- :A:$S BSS 1 STATUS SAVE
- :A:$C BSS 2 AC SAVE
- :A:$R BSS 1 RETURN SAVE
- :A:$0 BSS 1 AR0 SAVE
- :A:$1 BSS 1 AR1 SAVE
- CEND END
- $VAR P
- $ASG '$$PROC' TO P.S
- $ASG 3 TO P.SV FLAG INTRPT
- $ASG :A: TO P.SS
- $ASG '$$IPRC' TO P.S
- $ASG :A: TO P.SS
- $END